// pages/userintegral/userintegral.js
const util = require("../../../../utils/util.js")
const App = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    navStyle: [],
    integral_hg: [], //积分换购列表
    integral_jfjl: [{
        "id": 2,
        "member_id": 25,
        "change_integral": 5,
        "type": 1,
        "integral_total": 10,
        "integral_surplus": 10,
        "createtime": "2023.02.21 13:15:09",
        "remark": "签到获取积分"
      },
      {
        "id": 1,
        "member_id": 25,
        "change_integral": 5, //变动积分
        "type": 1,
        "integral_total": 5, //获得总积分
        "integral_surplus": 5, //当前可用
        "createtime": "2023.02.15 10:07:49",
        "remark": "签到获取积分"
      }
    ], //积分记录
    integral_jfgz: [], //积分规则
    page: 1, //当前第几页
    limit: 10, //一页展示几条
    loading: false, //是否展示 “正在加载” 字样
    loaded: false, //是否展示 “已加载全部” 字样
    selected: 1,
    currentItemId: 2,
    MyIntegral: {}, // 我的积分
    token: wx.getStorageSync('token'),
  },
  //返回上一页
  navigateBack: function () {
    util.navigateBack();
  },
  //积分记录
  async informPort() {
    const token = wx.getStorageSync('token');
    try {
      util.request('/api/ucenter/scoreList', {
        page: this.data.page,
        token: this.data.token
      }, 'GET').then(res => {
        if (res.data.code == 0) {
          var datas = res.data.data[0]
          if (datas.list.length > 0) {
            console.log(res, 'resres');
            this.integral_jfjl = datas.list
          } else {
            wx.showToast({
              title: "暂无积分记录数据",
              icon: 'none'
            });
          }
        } else {
          wx.showToast({
            title: res.data.msg,
            icon: 'error'
          });
        }
        this.getMyIntegral()
      });
    } catch (err) {
      console.log(err)
    }
  },
  // 我的积分
  async getMyIntegral() {
    await util.request('/api/ucenter/scorePage', {
      token: this.data.token,
      page: this.data.page,
    }, "GET").then(Response => {
      console.log(Response, 'Response');
      if (Response.data.code == 0) {
        this.setData({
          MyIntegral: Response.data.data.score_list
        })
        this.getSignrule()
      } else {
        wx.showToast({
          title: Response.data.msg,
          icon: 'error'
        })
      }
    })
  },
  // 积分规则
  async getSignrule() {
    await util.request('/api/ucenter/signrule', {
      token: this.data.token
    }, "GET").then(response => {
      if (response.data.code === 0) {
        this.setData({
          integral_jfgz: response.data.data
        })
      } else {
        wx.showToast({
          title: response.data.msg,
          icon: 'error'
        })
      }
    })
  },
  // 触底函数---上拉加载
  onReachBottom() {
    let that = this; //防止this指向问题
    if (!that.data.loading) {
      that.setData({
        loading: true, //加载中
        loaded: false //是否加载完所有数据
      });
    }
    //延时调用接口
    setTimeout(function () {
      that.informPort();
    }, 500)
  },
  // 上拉函数---下拉刷新
  onPullDownRefresh() {
    this.data.list = []
    wx.showNavigationBarLoading() //在标题栏中显示加载圈圈
    this.setData({
      page: 1
    }); //重置页码
    this.informPort().then(res => {
      if (res.data.code == '0') {
        setTimeout(function () {
          wx.showToast({
            title: '刷新成功',
            icon: 'none',
            duration: 1000
          })
          wx.hideNavigationBarLoading() //完成停止加载
          wx.stopPullDownRefresh() //停止下拉刷新
        }, 1000)
      } else if (res.data.code != 10000) {
        setTimeout(function () {
          wx.showToast({
            title: '刷新失败',
            icon: 'none',
            duration: 1000
          })
          wx.hideNavigationBarLoading() //完成停止加载
          wx.stopPullDownRefresh() //停止下拉刷新
        }, 1000)
      }
    })
  },
  //跳转详情
  bindleGoodsInfoTap(e) {
    const {
      index
    } = e.currentTarget.dataset;
    wx.navigateTo({
      url: '/modules/goodsModule/pages/goodsinfo/goodsinfo?id=' + index + '&is_integra=1',
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setData({
      navStyle: App.globalData,
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    this.informPort()
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})